package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 车辆信息对象 vehicle_info
 * 
 * @author ruoyi
 * @date 2025-04-05
 */
public class VehicleInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 车辆ID */
    private Long id;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String vehicleNumber;

    /** 车辆品牌 */
    @Excel(name = "车辆品牌")
    private String brand;

    /** 车辆型号 */
    @Excel(name = "车辆型号")
    private String model;

    /** 车辆状态，1表示待使用，2表示已使用 */
    private Long status;

    /** 车辆状态，1表示待使用，2表示已使用 */
    @Excel(name = "车辆状态")
    private String statusName;

    /** 逻辑删除标记，0表示未删除，1表示已删除 */
    private Long isDeleted;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setVehicleNumber(String vehicleNumber) 
    {
        this.vehicleNumber = vehicleNumber;
    }

    public String getVehicleNumber() 
    {
        return vehicleNumber;
    }
    public void setBrand(String brand) 
    {
        this.brand = brand;
    }

    public String getBrand() 
    {
        return brand;
    }
    public void setModel(String model) 
    {
        this.model = model;
    }

    public String getModel() 
    {
        return model;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setIsDeleted(Long isDeleted) 
    {
        this.isDeleted = isDeleted;
    }

    public Long getIsDeleted() 
    {
        return isDeleted;
    }

    public String transStatusName() {
        if (status == 1) {
            return "待使用";
        } else if (status == 2) {
            return "已使用";
        } else {
            return "未知";
        }
    }

    public void setStatusName(String statusName) {
        this.statusName = statusName;
    }
    public String getStatusName() {
        return statusName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("vehicleNumber", getVehicleNumber())
            .append("brand", getBrand())
            .append("model", getModel())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("isDeleted", getIsDeleted())
                .append("isDeleted", getStatusName())
            .toString();
    }
}
